A recent development in video display systems is the use of spatial light modulators, to take the place of raster-scan electronic beam devices. These modulators consist of an array of electronically addressable pixel elements. For display, light from each pixel is magnified and projected to a display screen by an optical system. The type of modulation depends on how the modulator is combined with an optical system.
A frequently used type of spatial light modulator is the deformable mirror device, in which each pixel element is a tiny mirror, each capable of separate mechanical movement in response to an electrical input. Incident light may be modulated in direction, phase, or amplitude by reflection from each pixel element.
For many applications, the spatial light modulator is binary in the sense that each pixel element may have either of two states. The element may be off, which means that it delivers no light. Or, the element may be on, which means that it delivers light at a maximum intensity. To achieve a viewer perception of intermediate levels of light, various pulse width modulation techniques may be used. These techniques are described in pending U.S. Pat. Ser. No. 678,761, entitled "DMD Architecture and Timing for Use in a Pulse-Width Modulated Display System".
Pulse width modulation uses various schemes for loading the modulator, including "bit-frame" loading, in which one bit per pixel for an entire frame is loaded at one time. Thus, for example, for 8-bit pixel resolution, the modulator is loaded eight times per frame, one pixel per frame at a time, with the load timing determined by the particular modulation technique being used. Several such methods are described in U.S. Pat. Ser. No. 678,761, entitled "DMD Architecture and Timing for Use in a Pulse-Width Modulated Display System". In those methods, the most significant bit is loaded for 1/2 of a frame period, the second most significant bit for 1/4, frame period, etc. The loading occurs in bit-frame bursts, during a "least significant bit-time" which is calculated by dividing the total frame-time into 2.sup.n -1 least significant bit-times, where n is the resolution of each bit. Either the bit-frame representing the least significant bit or the most significant bit may be loaded first, depending on the method being used.
Implementation of pulse width modulation requires the use of a frame buffer for incoming data. Because the modulator receives data in bit-frames, it is necessary for the frame buffer to receive an entire image before transferring data to the modulator. The frame buffer must permit one frame to be transferred to the modulator while the next frame is being input to the frame buffer. The most straightforward approach to providing a sufficiently large frame buffer is to provide memory space for two complete frames. In a two-frame memory, while the first part of the memory is being filled with the data from the incoming frame, the stored data from the previous incoming frame is being transferred from the second part of the memory to the spatial light modulator. After all of the data for the incoming frame has been stored into the first part of the memory, this data is transferred to the spatial light modulator while the next frame of incoming data is being stored into the second part of the memory. Thus, the two parts of the memory operate in a "ping-pong" manner, with each part alternating, on a frame-by-frame basis, between receiving incoming data and outputting data to the spatial light modulator. However, because this approach is expensive, a need exists for a means to decrease the required memory size.